Principals in Programming Languages: Technical Results

نویسندگان

  • Steve Zdancewic
  • Dan Grossman
چکیده

This is the companion technical report for “Principals in Programming Languages” [20]. See that document for a more readable version of these results. In this paper, we describe two variants of the simply typed λ-calculus extended with a notion of principal. The results are languages in which intuitive statements like “the client must call open to obtain a file handle” can be phrased and proven formally. The first language is a two-agent calculus with references and recursive types, while the second language explores the possibility of multiple agents with varying amounts of type information. We use these calculi to give syntactic proofs of some type abstraction results that traditionally require semantic arguments.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Principals in Programming Languages

Programs are often structured around the idea that different pieces of code comprise distinct principals, each with a view of its environment. Typical examples include the modules of a large program, a host and its clients, or a collection of interactive agents. In this paper, we formalize this notion of principal in the programming language itself. The result is a language in which intuitive s...

متن کامل

Distributed-knowledge Authorization Language January 2008 Revision

DKAL is an expressive declarative authorization language based on existential fixed-point logic. It is considerably more expressive than existing languages in the literature, and yet feasible. Our query algorithm is within the same bounds of computational complexity as e.g. that of SecPAL. DKAL’s distinguishing features include • explicit handling of knowledge and information, • targeted commun...

متن کامل

Principals, Policies and Keys in a Secure Distributed Programming Language

KDLM is a model of information flow control for distributed programming languages, introducing a distributed notion of selective declassification. KDLM uses type-level notions of both principals and policies to model security policies incorporating access control and information flow control, with run-time representatives based on cryptographic keys. This article addresses the question of how t...

متن کامل

Existential Types for Imperative Languages: Technical Results

This technical report contains the full type-safety proof for the language presented in the paper Existential Types for Imperative Languages, originally submitted for publication in October 2001. Because this report should be read only after the paper, effectively as an appendix, we do not repeat the motivation, examples, and informal presentation contained there. Also refer to the paper for re...

متن کامل

Using tccp for the Speci cation of Communication Protocols ∗

The automatic analysis of cryptographic protocols by using formal methods on concurrent languages is a subject widely treated in the literature. From its beginning in the decade of the 70s, the eld has been gaining maturity and consolidation. The Timed Concurrent Constraint Language (tccp in short) is a declarative concurrent programming language which, like other concurrent languages, allows u...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1999